home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1994 November: Tool Chest / Dev.CD Nov 94.toast / Tool Chest / QuickDraw GX / QuickDraw GX Info / QuickDraw GX Interfaces / Interfaces & Libraries / interfaces / layout feature constants.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-04-30  |  11.7 KB  |  335 lines  |  [TEXT/MPS ]

  1. /* graphics libraries:
  2.     layout feature constants: Names for layout feature types and selectors.
  3.   by Dave Opstad, Eric Mader, Dennis Buchheim
  4.   Copyright 1992 - 1993 Apple Computer, Inc. All rights reserved.    */
  5.  
  6. #pragma once
  7. #ifndef layoutFeatureConstantsIncludes
  8.     #define layoutFeatureConstantsIncludes
  9.     
  10.     #ifdef __cplusplus
  11.     extern "C" {
  12.     #endif
  13.     
  14.     /* The following values can be used to set gxRunFeature values. Note that unless the
  15.         feature is defaulted differently in different fonts, the zero value for the
  16.         selectors represents the default value. */
  17.     
  18.     enum {
  19.  
  20.       allTypographicFeaturesType = 0,
  21.   
  22.             allTypeFeaturesOnSelector                        = 0,
  23.             allTypeFeaturesOffSelector                    = 1,
  24.   
  25.       ligaturesType = 1,
  26.   
  27.             requiredLigaturesOnSelector                    = 0,
  28.             requiredLigaturesOffSelector                = 1,
  29.             commonLigaturesOnSelector                        = 2,
  30.             commonLigaturesOffSelector                    = 3,
  31.             rareLigaturesOnSelector                            = 4,
  32.             rareLigaturesOffSelector                        = 5,
  33.             logosOnSelector                                            = 6,
  34.             logosOffSelector                                        = 7,
  35.             rebusPicturesOnSelector                            = 8,
  36.             rebusPicturesOffSelector                        = 9,
  37.             diphthongLigaturesOnSelector                = 10,
  38.             diphthongLigaturesOffSelector                = 11,
  39.   
  40.       cursiveConnectionType = 2,
  41.   
  42.             unconnectedSelector                                    = 0,
  43.             partiallyConnectedSelector                    = 1,
  44.             cursiveSelector                                            = 2,
  45.   
  46.         letterCaseType = 3,
  47.   
  48.             upperAndLowerCaseSelector                        = 0,
  49.             allCapsSelector                                            = 1,
  50.             allLowerCaseSelector                                = 2,
  51.             smallCapsSelector                                        = 3,
  52.             initialCapsSelector                                    = 4,
  53.             initialCapsAndSmallCapsSelector            = 5,
  54.   
  55.         verticalSubstitutionType = 4,
  56.   
  57.             substituteVerticalFormsOnSelector        = 0,
  58.             substituteVerticalFormsOffSelector    = 1,
  59.   
  60.         linguisticRearrangementType = 5,
  61.   
  62.             linguisticRearrangementOnSelector        = 0,
  63.             linguisticRearrangementOffSelector    = 1,
  64.   
  65.         numberSpacingType = 6,
  66.   
  67.         monospacedNumbersSelector                        = 0,
  68.         proportionalNumbersSelector                    = 1,
  69.  
  70.         appleReserved1Type = 7,
  71.  
  72.         smartSwashType = 8,
  73.   
  74.             wordInitialSwashesOnSelector                = 0,
  75.             wordInitialSwashesOffSelector                = 1,
  76.             wordFinalSwashesOnSelector                    = 2,
  77.             wordFinalSwashesOffSelector                    = 3,
  78.             lineInitialSwashesOnSelector                = 4,
  79.             lineInitialSwashesOffSelector                = 5,
  80.             lineFinalSwashesOnSelector                    = 6,
  81.             lineFinalSwashesOffSelector                    = 7,
  82.             nonFinalSwashesOnSelector                        = 8,
  83.             nonFinalSwashesOffSelector                    = 9,
  84.   
  85.         diacriticsType = 9,
  86.   
  87.             showDiacriticsSelector                            = 0,
  88.             hideDiacriticsSelector                            = 1,
  89.             decomposeDiacriticsSelector                    = 2,
  90.   
  91.         verticalPositionType = 10,
  92.   
  93.             normalPositionSelector                            = 0,
  94.             superiorsSelector                                        = 1,
  95.             inferiorsSelector                                        = 2,
  96.             ordinalsSelector                                        = 3,
  97.   
  98.         fractionsType = 11,
  99.   
  100.             noFractionsSelector                                    = 0,
  101.             verticalFractionsSelector                        = 1,
  102.             diagonalFractionsSelector                        = 2,
  103.   
  104.         appleReserved2Type = 12,
  105.   
  106.         overlappingCharactersType = 13,
  107.   
  108.             preventOverlapOnSelector                        = 0,
  109.             preventOverlapOffSelector                        = 1,
  110.   
  111.         typographicExtrasType = 14,
  112.   
  113.             hyphensToEmDashOnSelector                        = 0,
  114.             hyphensToEmDashOffSelector                    = 1,
  115.             hyphenToEnDashOnSelector                        = 2,
  116.             hyphenToEnDashOffSelector                        = 3,
  117.             unslashedZeroOnSelector                            = 4,
  118.             unslashedZeroOffSelector                        = 5,
  119.             formInterrobangOnSelector                        = 6,
  120.             formInterrobangOffSelector                    = 7,
  121.             smartQuotesOnSelector                                = 8,
  122.             smartQuotesOffSelector                            = 9,
  123.   
  124.         mathematicalExtrasType = 15,
  125.   
  126.             hyphenToMinusOnSelector                            = 0,
  127.             hyphenToMinusOffSelector                        = 1,
  128.             asteriskToMultiplyOnSelector                = 2,
  129.             asteriskToMultiplyOffSelector                = 3,
  130.             slashToDivideOnSelector                            = 4,
  131.             slashToDivideOffSelector                        = 5,
  132.             inequalityLigaturesOnSelector                = 6,
  133.             inequalityLigaturesOffSelector            = 7,
  134.             exponentsOnSelector                                    = 8,
  135.             exponentsOffSelector                                = 9,
  136.   
  137.         ornamentSetsType = 16,
  138.   
  139.             noOrnamentsSelector                                    = 0,
  140.             dingbatsSelector                                        = 1,
  141.             piCharactersSelector                                = 2,
  142.             fleuronsSelector                                        = 3,
  143.             decorativeBordersSelector                        = 4,
  144.             internationalSymbolsSelector                = 5,
  145.             mathSymbolsSelector                                    = 6,
  146.   
  147.         characterAlternativesType = 17,
  148.         
  149.              noAlternatesSelector                                = 0,
  150.             
  151.             /* Additional character alternatives selectors may be defined by a font. */
  152.     
  153.         designComplexityType = 18,
  154.   
  155.             designLevel1Selector                                = 0,
  156.             designLevel2Selector                                = 1,
  157.             designLevel3Selector                                = 2,
  158.             designLevel4Selector                                = 3,
  159.             designLevel5Selector                                = 4,
  160.   
  161.         styleOptionsType = 19,
  162.   
  163.             noStyleOptionsSelector                            = 0,
  164.             displayTextSelector                                    = 1,
  165.             engravedTextSelector                                = 2,
  166.             illuminatedCapsSelector                            = 3,
  167.             titlingCapsSelector                                    = 4,
  168.             tallCapsSelector                                        = 5,
  169.   
  170.         characterShapeType = 20,
  171.   
  172.             traditionalCharactersSelector                = 0,
  173.             simplifiedCharactersSelector                = 1,
  174.  
  175.         numberCaseType = 21,
  176.   
  177.             lowerCaseNumbersSelector                        = 0,
  178.             upperCaseNumbersSelector                        = 1,
  179.  
  180.         lastFeatureType = -1
  181.     };
  182.  
  183.  
  184. /*-------------------------------------------------------------------------------------*/
  185.  
  186. /* The constants provided below are for backward compatibility only.  Use of the above
  187.    constant names is preferred. */
  188.  
  189.     enum {
  190.     
  191.       typographicFeaturesType = allTypographicFeaturesType,
  192.       
  193.         enableEffectsOnSelector                 = allTypeFeaturesOnSelector,
  194.         enableEffectsOffSelector                = allTypeFeaturesOffSelector,
  195.       
  196.       ligatureType = ligaturesType,
  197.       
  198.         ligatureRequiredOnSelector              = requiredLigaturesOnSelector,
  199.         ligatureRequiredOffSelector             = requiredLigaturesOffSelector,
  200.         ligatureCommonOnSelector                = commonLigaturesOnSelector,
  201.         ligatureCommonOffSelector               = commonLigaturesOffSelector,
  202.         ligatureRareOnSelector                  = rareLigaturesOnSelector,
  203.         ligatureRareOffSelector                 = rareLigaturesOffSelector,
  204.         ligatureLogotypeOnSelector              = logosOnSelector,
  205.         ligatureLogotypeOffSelector             = logosOffSelector,
  206.         ligatureRebusOnSelector                 = rebusPicturesOnSelector,
  207.         ligatureRebusOffSelector                = rebusPicturesOffSelector,
  208.       
  209. /*  cursiveConnectionType = 2, */
  210.       
  211.         cursiveConnectionNoneSelector           = unconnectedSelector,
  212.         cursiveConnectionPartialSelector        = partiallyConnectedSelector,
  213.         cursiveConnectionFullSelector           = cursiveSelector,
  214.       
  215.       letterNumberCaseType = letterCaseType,
  216.       
  217.         letterNumberCaseUpperLowerSelector      = upperAndLowerCaseSelector,
  218.         letterNumberCaseAllUpperSelector        = allCapsSelector,
  219.         letterNumberCaseAllLowerSelector        = allLowerCaseSelector,
  220.         letterNumberCaseSmallCapsSelector       = smallCapsSelector,
  221.         letterNumberCaseUpperThenLowerSelector  = initialCapsSelector,
  222.         letterNumberCaseUpperThenSmCapsSelector = initialCapsAndSmallCapsSelector,
  223.       
  224. /*  verticalSubstitutionType = 4, */
  225.       
  226.         verticalSubstitutionOnSelector          = substituteVerticalFormsOnSelector,
  227.         verticalSubstitutionOffSelector         = substituteVerticalFormsOffSelector,
  228.       
  229.       rearrangementType = linguisticRearrangementType,
  230.       
  231.         rearrangementOnSelector                 = linguisticRearrangementOnSelector,
  232.         rearrangementOffSelector                = linguisticRearrangementOffSelector,
  233.       
  234.       numberStyleType = numberSpacingType,
  235.       
  236.         numberStyleForColumnsSelector           = monospacedNumbersSelector,
  237.         numberStyleProportionalSelector         = proportionalNumbersSelector,
  238.       
  239. /*    Note: The checkbox feature type Alternate Designs has been removed.
  240.  
  241.         Most of its settings have been divided between two new RADIO BUTTON feature types:
  242.             Design Complexity
  243.                 Book Text, Sloped, and Chancery have been replaced by generic design levels.
  244.             Style Options
  245.                 Engraved, Display Text, Illuminated Text, and Titling Caps have been moved.
  246.                 
  247.         The Cursive setting has been eliminated. */
  248.       
  249. /*  smartSwashType = 8, */
  250.       
  251.         smartSwashWordInitialsOnSelector        = wordInitialSwashesOnSelector,
  252.         smartSwashWordInitialsOffSelector       = wordInitialSwashesOffSelector,
  253.         smartSwashWordFinalsOnSelector          = wordFinalSwashesOnSelector,
  254.         smartSwashWordFinalsOffSelector         = wordFinalSwashesOffSelector,
  255.         smartSwashLineInitialsOnSelector        = lineInitialSwashesOnSelector,
  256.         smartSwashLineInitialsOffSelector       = lineInitialSwashesOffSelector,
  257.         smartSwashLineFinalsOnSelector          = lineFinalSwashesOnSelector,
  258.         smartSwashLineFinalsOffSelector         = lineFinalSwashesOffSelector,
  259.         smartSwashArchaicNonFinalsOnSelector    = nonFinalSwashesOnSelector,
  260.         smartSwashArchaicNonFinalsOffSelector   = nonFinalSwashesOffSelector,
  261.       
  262. /*  diacriticsType = 9, */
  263.       
  264.         diacriticsShowSelector                  = showDiacriticsSelector,
  265.         diacriticsHideSelector                  = hideDiacriticsSelector,
  266.         diacriticsSerializeSelector             = decomposeDiacriticsSelector,
  267.       
  268. /*  verticalPositionType = 10, */
  269.       
  270.         verticalPositionNormalSelector          = normalPositionSelector,
  271.         verticalPositionSuperiorsSelector       = superiorsSelector,
  272.         verticalPositionInferiorsSelector       = inferiorsSelector,
  273.         verticalPositionOrdinalsSelector        = ordinalsSelector,
  274.       
  275. /*  fractionsType = 11, */
  276.       
  277.         fractionsDontFormSelector               = noFractionsSelector,
  278.         fractionsFormVerticalSelector           = verticalFractionsSelector,
  279.         fractionsFormDiagonalSelector           = diagonalFractionsSelector,
  280.       
  281.       diphthongLigaturesType = ligaturesType,
  282.       
  283. /*    diphthongLigaturesOnSelector            = 0,
  284.         diphthongLigaturesOffSelector           = 1, */
  285.       
  286.       overlappingGlyphsType = overlappingCharactersType,
  287.       
  288.         overlappingGlyphsPreventOnSelector      = preventOverlapOnSelector,
  289.         overlappingGlyphsPreventOffSelector     = preventOverlapOffSelector,
  290.       
  291. /*  typographicExtrasType = 14, */
  292.       
  293.         extrasHyphensToEmDashOnSelector         = hyphensToEmDashOnSelector,
  294.         extrasHyphensToEmDashOffSelector        = hyphensToEmDashOffSelector,
  295.         extrasHyphenToEnDashOnSelector          = hyphenToEnDashOnSelector,
  296.         extrasHyphenToEnDashOffSelector         = hyphenToEnDashOffSelector,
  297.         extrasForceUnslashedZeroOnSelector      = unslashedZeroOnSelector,
  298.         extrasForceUnslashedZeroOffSelector     = unslashedZeroOffSelector,
  299.         extrasMakeInterrobangOnSelector         = formInterrobangOnSelector,
  300.         extrasMakeInterrobangOffSelector        = formInterrobangOffSelector,
  301.       
  302.       mathExtrasType = mathematicalExtrasType,
  303.       
  304.         mathHyphenToMinusOnSelector             = hyphenToMinusOnSelector,
  305.         mathHyphenToMinusOffSelector            = hyphenToMinusOffSelector,
  306.         mathStarToMultiplyOnSelector            = asteriskToMultiplyOnSelector,
  307.         mathStarToMultiplyOffSelector           = asteriskToMultiplyOffSelector,
  308.         mathSlashToDivideOnSelector             = slashToDivideOnSelector,
  309.         mathSlashToDivideOffSelector            = slashToDivideOffSelector,
  310.         mathInequalityLigaturesOnSelector       = inequalityLigaturesOnSelector,
  311.         mathInequalityLigaturesOffSelector      = inequalityLigaturesOffSelector,
  312.         mathExponentiationOnSelector            = exponentsOnSelector,
  313.         mathExponentiationOffSelector           = exponentsOffSelector,
  314.       
  315. /*  ornamentSetsType = 16, */
  316.       
  317.         ornamentSetsNoneSelector                = noOrnamentsSelector,
  318.         ornamentSetsDingbatsSelector            = dingbatsSelector,
  319.         ornamentSetsPiCharactersSelector        = piCharactersSelector,
  320.         ornamentSetsFleuronsSelector            = fleuronsSelector,
  321.         ornamentSetsDecorativeBordersSelector   = decorativeBordersSelector,
  322.         ornamentSetsIntlSymbolsSelector         = internationalSymbolsSelector,
  323.         ornamentSetsMathSymbolsSelector         = mathSymbolsSelector,
  324.       
  325.       glyphAlternativesType = characterAlternativesType
  326.       
  327.     };
  328.  
  329.     
  330.     #ifdef __cplusplus
  331.     }
  332.     #endif
  333. #endif /* layoutFeatureConstantsIncludes */
  334.  
  335.